---
stage: none
group: Style Guide
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
description: 'Writing styles, markup, formatting, and other standards for GitLab Documentation.'
---

# Recommended word list

To help ensure consistency in the documentation, the Technical Writing team
recommends these word choices. In addition:

- The GitLab handbook contains a list of
  [top misused terms](https://about.gitlab.com/handbook/communication/top-misused-terms/).
- The documentation [style guide](../styleguide#language) includes details
  about language and capitalization.
- The GitLab handbook provides guidance on the [use of third-party trademarks](https://about.gitlab.com/handbook/legal/policies/product-third-party-trademarks-guidelines/#process-for-adding-third-party-trademarks-to-gitlab).

For guidance not on this page, we defer to these style guides:

- [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/welcome/)
- [Google Developer Documentation Style Guide](https://developers.google.com/style)

<!-- vale off -->
<!-- markdownlint-disable -->

## `&`

Do not use Latin abbreviations. Use **and** instead, unless you are documenting a UI element that uses an `&`.

## `@mention`

Try to avoid **`@mention`**. Say **mention** instead, and consider linking to the
[mentions topic](../../../user/discussions/index.md#mentions).
Don't use backticks.

## 2FA, two-factor authentication

Spell out **two-factor authentication** in sentence case for the first use and in topic titles, and **2FA**
thereafter. If the first word in a sentence, do not capitalize `factor` or `authentication`. For example:

- Two-factor authentication (2FA) helps secure your account. Set up 2FA when you first log in.

## above

Try to avoid using **above** when referring to an example or table in a documentation page. If required, use **previous** instead. For example:

- In the previous example, the dog had fleas.

Do not use **above** when referring to versions of the product. Use [**later**](#later) instead.

Use:

- In GitLab 14.4 and later...

Instead of:

- In GitLab 14.4 and above...
- In GitLab 14.4 and higher...
- In GitLab 14.4 and newer...

## access level

Access levels are different than [roles](#roles) or [permissions](#permissions).
When you create a user, you choose an access level: **Regular**, **Auditor**, or **Administrator**.

Capitalize these words when you refer to the UI. Otherwise use lowercase.

## active voice

Use active voice instead of passive.

Use:

- The contributor writes the documentation.

Instead of:

- The documentation is written by contributors.

NOTE:
If you can add the phrase "by zombies" to the phrase,
the construction is passive. For example, `The button is selected by zombies`
is passive. `Zombies select the button` is active.

## Admin Area

Use title case for **Admin Area**.
This area of the UI says **Admin Area** at the top of the page and on the menu.

## administrator

Use **administrator access** instead of **admin** when talking about a user's access level.

![admin access level](img/admin_access_level.png)

An **administrator** is not a [role](#roles) or [permission](#permissions).

Use:

- To do this thing, you must be an administrator.
- To do this thing, you must have administrator access.

Instead of:

- To do this thing, you must have the Admin role.

## advanced search

Use lowercase for **advanced search** to refer to the faster, more efficient search across the entire GitLab instance.

## agent

Use lowercase to refer to the [GitLab agent for Kubernetes](https://gitlab.com/gitlab-org/cluster-integration/gitlab-agent).
For example:

- To connect your cluster to GitLab, use the GitLab agent for Kubernetes.
- Install the agent in your cluster.
- Select an agent from the list.

Do not use title case for **GitLab Agent** or **GitLab Agent for Kubernetes**.

## agent access token

The token generated when you create an agent for Kubernetes. Use **agent access token**, not:

- registration token
- secret token
- authentication token

## AI, artificial intelligence

Use **AI**. Do not spell out **artificial intelligence**.

## air gap, air-gapped

Use **offline environment** to describe installations that have physical barriers or security policies that prevent or limit internet access. Do not use **air gap**, **air gapped**, or **air-gapped**. For example:

- The firewall policies in an offline environment prevent the computer from accessing the internet.

## allow, enable

Try to avoid **allow** and **enable**, unless you are talking about security-related features.

Use:

- You can add a file to your repository.

Instead of:

- This feature allows you to add a file to your repository.
- This feature enables users to add files to their repository.

This phrasing is more active and is from the user perspective, rather than the person who implemented the feature.
For more information, see the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/a/allow-allows).

## analytics

Use lowercase for **analytics** and its variations, like **contribution analytics** and **issue analytics**.
However, if the UI has different capitalization, make the documentation match the UI.

For example:

- You can view merge request analytics for a project. They are displayed on the Merge Request Analytics dashboard.

## and/or

Instead of **and/or**, use **or** or rewrite the sentence to spell out both options.

## and so on

Do not use **and so on**. Instead, be more specific. For more information, see the
[Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/a/and-so-on).

## area

Use [**section**](#section) instead of **area**. The only exception is [the Admin Area](#admin-area).

## as

Do not use **as** to mean **because**.

Use:

- Because none of the endpoints return an ID...

Instead of:

- As none of the endpoints return an ID...

## as well as

Instead of **as well as**, use **and**.

## associate

Do not use **associate** when describing adding issues to epics, or users to issues, merge requests,
or epics.

Instead, use **assign**. For example:

- Assign the issue to an epic.
- Assign a user to the issue.

## authenticated user

Use **authenticated user** instead of other variations, like **signed in user** or **logged in user**.

## below

Try to avoid **below** when referring to an example or table in a documentation page. If required, use **following** instead. For example:

- In the following example, the dog has fleas.

## Beta

Use uppercase for **Beta**. For example: **The XYZ feature is in Beta.** or **This Beta release is ready to test.**

You might also want to link to [this section](../../../policy/experiment-beta-support.md#beta)
in the handbook when writing about Beta features.

## blacklist

Do not use **blacklist**. Another option is **denylist**. ([Vale](../testing.md#vale) rule: [`InclusionCultural.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionCultural.yml))

## board

Use lowercase for **boards**, **issue boards**, and **epic boards**.

## box

Use **text box** to refer to the UI field. Do not use **field** or **box**. For example:

- In the **Variable name** text box, enter a value.


## bullet

Don't refer to individual items in an ordered or unordered list as **bullets**. Use **list item** instead. If you need to be less ambiguous, you can use:

- **Ordered list item** for items in an ordered list.
- **Unordered list item** for items in an unordered list.

## button

Don't use a descriptor with **button**.

Use:

- Select **Run pipelines**.

Instead of:

- Select the **Run pipelines** button.

## cannot, can not

Use **cannot** instead of **can not**.

See also [contractions](index.md#contractions).

## Chat, GitLab Duo Chat

Use **Chat** with a capital `c` for **Chat** or **GitLab Duo Chat**.

## checkbox

Use one word for **checkbox**. Do not use **check box**.

You **select** (not **check** or **enable**) and **clear** (not **deselect** or **disable**) checkboxes. For example:

- Select the **Protect environment** checkbox.
- Clear the **Protect environment** checkbox.

If you must refer to the checkbox, you can say it is selected or cleared. For example:

- Ensure the **Protect environment** checkbox is cleared.
- Ensure the **Protect environment** checkbox is selected.

(For `deselect`, [Vale](../testing.md#vale) rule: [`SubstitutionWarning.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/SubstitutionWarning.yml))

## checkout, check out

Use **check out** as a verb. For the Git command, use `checkout`.

- Use `git checkout` to check out a branch locally.
- Check out the files you want to edit.

## CI/CD

CI/CD is always uppercase. No need to spell it out on first use.

## CI/CD minutes

Do not use **CI/CD minutes**. This term was renamed to [**compute minutes**](#compute-minutes).

## click

Do not use **click**. Instead, use **select** with buttons, links, menu items, and lists.
**Select** applies to more devices, while **click** is more specific to a mouse.

## cloud native

When you're talking about using a Kubernetes cluster to host GitLab, you're talking about a **cloud-native version of GitLab**.
This version is different than the larger, more monolithic **Linux package** that is used to deploy GitLab.

You can also use **cloud-native GitLab** for short. It should be hyphenated and lowercase.

## Code Suggestions

Use title case for **Code Suggestions**.

## collapse

Use **collapse** instead of **close** when you are talking about expanding or collapsing a section in the UI.

## command line

Use **From the command line** to introduce commands.

Hyphenate when using as an adjective. For example, **a command-line tool**.

## compute

Use **compute** for the resources used by runners to run CI/CD jobs.

Related terms:

- [**compute minutes**](#compute-minutes): How compute usage is calculated. For example, `400 compute minutes`.
- [**compute quota**](../../../ci/pipelines/cicd_minutes.md): The limit of compute minutes that a namespace can use each month.
- **compute usage**: The number of compute minutes that the namespace has used from the monthly quota.

## compute minutes

Use **compute minutes** instead of these (or similar) terms:

- **CI/CD minutes**
- **CI minutes**
- **pipeline minutes**
- **CI pipeline minutes**
- **pipeline minutes**

For more information, see [epic 2150](https://gitlab.com/groups/gitlab-com/-/epics/2150).

## confirmation dialog

Use **confirmation dialog** to describe the dialog that asks you to confirm an action. For example:

- On the confirmation dialog, select **OK**.

Do not use **confirmation box** or **confirmation dialog box**. See also [**dialog**](#dialog).

## Container Registry

Use title case for the GitLab Container Registry.

## currently

Do not use **currently** when talking about the product or its features. The documentation describes the product as it is today.
([Vale](../testing.md#vale) rule: [`CurrentStatus.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/CurrentStatus.yml))

## data

Use **data** as a singular noun.

Use:

- Data is collected.
- The data shows a performance increase.

Instead of:

- Data are collected.
- The data show a performance increase.

## default branch

Use **default branch** to refer generically to the primary branch in the repository.
Users can set the default branch by using a UI setting.

For examples that use the default branch, use `main` instead of [`master`](#master).

## delete

Use **delete** when an object is completely deleted. **Delete** is the opposite of **create**.

When the object continues to exist, use [**remove**](#remove) instead.
For example, you can remove an issue from an epic, but the issue still exists.

## Dependency Proxy

Use title case for the GitLab Dependency Proxy.

## deploy board

Use lowercase for **deploy board**.

## Developer

When writing about the Developer role:

- Use a capital **D**.
- Do not use bold.
- Do not use the phrase, **if you are a developer** to mean someone who is assigned the Developer
  role. Instead, write it out. For example, **if you are assigned the Developer role**.
- To describe a situation where the Developer role is the minimum required:
  - Use: at least the Developer role
  - Instead of: the Developer role or higher

Do not use **Developer permissions**. A user who is assigned the Developer role has a set of associated permissions.

## dialog

Use **dialog** rather than any of these alternatives:

- **dialog box**
- **modal**
- **modal dialog**
- **modal window**
- **pop-up**
- **pop-up window**
- **window**

See also [**confirmation dialog**](#confirmation-dialog). For more information, see the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/d/dialog-box-dialog-dialogue).

When the dialog is the location of an action, use **on** as a preposition. For example:

- On the **Grant permission** dialog, select **Group**.

See also [**on**](#on).

## disable

See the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/d/disable-disabled) for guidance on **disable**.
Use **inactive** or **off** instead. ([Vale](../testing.md#vale) rule: [`InclusionAbleism.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionAbleism.yml))

## disallow

Use **prevent** instead of **disallow**. ([Vale](../testing.md#vale) rule: [`Substitutions.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/Substitutions.yml))

## Docker-in-Docker, `dind`

Use **Docker-in-Docker** when you are describing running a Docker container by using the Docker executor.

Use `dind` in backticks to describe the container name: `docker:dind`. Otherwise, spell it out.

## downgrade

To be more upbeat and precise, do not use **downgrade**. Focus instead on the action the user is taking.

- For changing to earlier GitLab versions, use [**roll back**](#roll-back).
- For changing to lower GitLab tiers, use **change the subscription tier**.

## dropdown list

Use **dropdown list** to refer to the UI element. Do not use **dropdown** without **list** after it.
Do not use **drop-down** (hyphenated), **dropdown menu**, or other variants.

For example:

- From the **Visibility** dropdown list, select **Public**.

## earlier

Use **earlier** when talking about version numbers.

Use:

- In GitLab 14.1 and earlier.

Instead of:

- In GitLab 14.1 and lower.
- In GitLab 14.1 and older.

## easily

Do not use **easily**. If the user doesn't find the process to be easy, we lose their trust.

## e.g.

Do not use Latin abbreviations. Use **for example**, **such as**, **for instance**, or **like** instead. ([Vale](../testing.md#vale) rule: [`LatinTerms.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/LatinTerms.yml))

## ellipsis

When documenting UI text, if the UI includes an ellipsis, do not include the ellipsis in the documentation.
For more information, see the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/punctuation/ellipses).

Use:

- **Create new**

Instead of:

- **Create new...**

## email

Do not use **e-mail** with a hyphen. When plural, use **emails** or **email messages**. ([Vale](../testing.md#vale) rule: [`SubstitutionSuggestions.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/SubstitutionSuggestions.yml))

## emoji

Use **emoji** to refer to the plural form of **emoji**.

## enable

See the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/e/enable-enables) for guidance on **enable**.
Use **active** or **on** instead. ([Vale](../testing.md#vale) rule: [`InclusionAbleism.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionAbleism.yml))

## enter

In most cases, use **enter** rather than **type**.

- **Enter** encompasses multiple ways to enter information, including speech and keyboard.
- **Enter** assumes that the user puts a value in a field and then moves the cursor outside the field (or presses <kbd>Enter</kbd>).
  **Enter** includes both the entering of the content and the action to validate the content.

For example:

- In the **Variable name** text box, enter a value.
- In the **Variable name** text box, enter `my text`.

When you use **Enter** to refer to the key on a keyboard, use the HTML `<kbd>` tag:

- To view the list of results, press <kbd>Enter</kbd>.

See also [**type**](#type).

## epic

Use lowercase for **epic**.

See also [associate](#associate).

## epic board

Use lowercase for **epic board**.

## etc.

Try to avoid **etc.**. Be as specific as you can. Do not use
[**and so on**](#and-so-on) as a replacement.

Use:

- You can update objects, like merge requests and issues.

Instead of:

- You can update objects, like merge requests, issues, etc.

## expand

Use **expand** instead of **open** when you are talking about expanding or collapsing a section in the UI.

## Experiment

Use uppercase for **Experiment**. For example: **The XYZ feature is an Experiment.** or **This Experiment is ready to test.**

You might also want to link to [this section](../../../policy/experiment-beta-support.md#experiment)
in the handbook when writing about Experiment features.

## FAQ

We want users to find information quickly, and they rarely search for the term **FAQ**.
Information in FAQs belongs with other similar information, under an easily searchable topic title.

## field

Use **text box** instead of **field** or **box**.

Use:

- In the **Variable name** text box, enter `my text`.

Instead of:

- In the **Variable name** field, enter `my text`.

However, you can make an exception when you are writing a task and you need to refer to all
of the fields at once. For example:

1. On the left sidebar, select **Search or go to** and find your project.
1. Select **Settings > CI/CD**.
1. Expand **General pipelines**.
1. Complete the fields.

Learn more about [documenting multiple fields at once](index.md#documenting-multiple-fields-at-once).

## filter

When you are viewing a list of items, like issues or merge requests, you filter the list by
the available attributes. For example, you might filter by assignee or reviewer.

Filtering is different from [searching](#search).

## foo

Do not use **foo** in product documentation. You can use it in our API and contributor documentation, but try to use a clearer and more meaningful example instead.

## fork

A **fork** is a project that was created from a **upstream project** by using the
[forking process](../../../topics/git/terminology.md#fork).

The **upstream project** (also known as the **source project**) and the **fork** have a **fork relationship** and are
**linked**.

If the [**fork relationship** is removed](../../../user/project/repository/forking_workflow.md#unlink-a-fork), the
**fork** is **unlinked** from the **upstream project**.

## future tense

When possible, use present tense instead of future tense. For example, use **after you execute this command, GitLab displays the result** instead of **after you execute this command, GitLab will display the result**. ([Vale](../testing.md#vale) rule: [`FutureTense.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/FutureTense.yml))

## GB, gigabytes

For **GB** and **MB**, follow the [Microsoft guidance](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/bits-bytes-terms).

## Geo

Use title case for **Geo**.

## GitLab

Do not make **GitLab** possessive (GitLab's). This guidance follows [GitLab Trademark Guidelines](https://about.gitlab.com/handbook/marketing/brand-and-product-marketing/brand/brand-activation/trademark-guidelines/).

## GitLab Dedicated

Do not use **Dedicated** by itself. Always use **GitLab Dedicated**.

## GitLab Duo

Do not use **Duo** by itself. Always use **GitLab Duo**.

## GitLab Flavored Markdown

When possible, spell out [**GitLab Flavored Markdown**](../../../user/markdown.md).
([Vale](../testing.md#vale) rule: [`GLFM.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/SubstitutionSuggestions.yml))

If you must abbreviate, do not use **GFM**. Use **GLFM** instead.

## GitLab Helm chart, GitLab chart

To deploy a cloud-native version of GitLab, use:

- The GitLab Helm chart (long version)
- The GitLab chart (short version)

Do not use **the `gitlab` chart**, **the GitLab Chart**, or **the cloud-native chart**.

You use the **GitLab Helm chart** to deploy **cloud-native GitLab** in a Kubernetes cluster.

If you use it in a context of describing the
[different installation methods](index.md#how-to-document-different-installation-methods).
use `Helm chart (Kubernetes)`.

## GitLab Pages

For consistency and branding, use **GitLab Pages** rather than **Pages**.

However, if you use **GitLab Pages** for the first mention on a page or in the UI,
you can use **Pages** thereafter.

## GitLab Runner

Use title case for **GitLab Runner**. This is the product you install. For more information about the decision for this usage,
see [this issue](https://gitlab.com/gitlab-org/gitlab/-/issues/233529).

See also:

- [runners](#runner-runners)
- [runner managers](#runner-manager-runner-managers)
- [runner workers](#runner-worker-runner-workers)

## GitLab SaaS

**GitLab SaaS** refers to the product license that provides access to GitLab.com. It does not refer to the
GitLab instance managed by GitLab itself.

## GitLab self-managed

Use **GitLab self-managed** to refer to the product license for GitLab instances managed by customers themselves.

## GitLab.com

**GitLab.com** refers to the GitLab instance managed by GitLab itself.

## guide

We want to speak directly to users. On `docs.gitlab.com`, do not use **guide** as part of a page title.
For example, **Snowplow Guide**. Instead, speak about the feature itself, and how to use it. For example, **Use Snowplow to do xyz**.

## Guest

When writing about the Guest role:

- Use a capital **G**.
- Write it out:
  - Use: if you are assigned the Guest role
  - Instead of: if you are a guest

- When the Guest role is the minimum required role:
  - Use: at least the Guest role
  - Instead of: the Guest role or higher

Do not use bold.

Do not use **Guest permissions**. A user who is assigned the Guest role has a set of associated permissions.

## handy

Do not use **handy**. If the user doesn't find the feature or process to be handy, we lose their trust. ([Vale](../testing.md#vale) rule: [`Simplicity.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/Simplicity.yml))

## high availability, HA

Do not use **high availability** or **HA**. Instead, direct readers to the GitLab [reference architectures](../../../administration/reference_architectures/index.md) for information about configuring GitLab for handling greater amounts of users.

## higher

Do not use **higher** when talking about version numbers.

Use:

- In GitLab 14.4 and later...

Instead of:

- In GitLab 14.4 and higher...
- In GitLab 14.4 and above...

## hit

Don't use **hit** to mean **press**.

Use:

- Press **ENTER**.

Instead of:

- Hit the **ENTER** button.

## I

Do not use first-person singular. Use **you** or rewrite the phrase instead.

## i.e.

Do not use Latin abbreviations. Use **that is** instead. ([Vale](../testing.md#vale) rule: [`LatinTerms.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/LatinTerms.yml))

## in order to

Do not use **in order to**. Use **to** instead. ([Vale](../testing.md#vale) rule: [`Wordy.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/Wordy.yml))

## indexes, indices

For the plural of **index**, use **indexes**.

However, for ElasticSearch, use [**indices**](https://www.elastic.co/blog/what-is-an-elasticsearch-index).

## Installation from source

When referring to the installation method using the self-compiled code, refer to it
as **self-compiled**.

Use:

- For self-compiled installations...

Instead of:

- For installations from source...

For more information, see the
[different installation methods](index.md#how-to-document-different-installation-methods).

## -ing words

Remove **-ing** words whenever possible. They can be difficult to translate,
and more precise terms are usually available. For example:

- Instead of **The files using storage are deleted**, use **The files that use storage are deleted**.
- Instead of **Delete files using the Edit button**, use **Use the Edit button to delete files**.
- Instead of **Replicating your server is required**, use **You must replicate your server**.

## issue

Use lowercase for **issue**.

## issue board

Use lowercase for **issue board**.

## issue weights

Use lowercase for **issue weights**.

## it

When you use the word **it**, ensure the word it refers to is obvious.
If it's not obvious, repeat the word rather than using **it**.

Use:

- The field returns a connection. The field accepts four arguments.

Instead of:

- The field returns a connection. It accepts four arguments.

See also [this, these, that, those](#this-these-that-those).

## job

Do not use **build** to be synonymous with **job**. A job is defined in the `.gitlab-ci.yml` file and runs as part of a pipeline.

If you want to use **CI** with the word **job**, use **CI/CD job** rather than **CI job**.

## Kubernetes executor

GitLab Runner can run jobs on a Kubernetes cluster. To do this, GitLab Runner uses the Kubernetes executor.

When referring to this feature, use:

- Kubernetes executor for GitLab Runner
- Kubernetes executor

Do not use:

- GitLab Runner Kubernetes executor, because this can infringe on the Kubernetes trademark.

## later

Use **later** when talking about version numbers.

Use:

- In GitLab 14.1 and later...

Instead of:

- In GitLab 14.1 and higher...
- In GitLab 14.1 and above...
- In GitLab 14.1 and newer...

## list

Do not use **list** when referring to a [**dropdown list**](#dropdown-list).
Use the full phrase **dropdown list** instead.

## license

When writing about licenses:

- Do not use variations such as **cloud license**, **offline license**, or **legacy license**.
- Do not use interchangeably with **subscription**:
  - A license grants users access to the subscription they purchased, and contains information such as the number of seats they purchased and subscription dates.
  - A subscription is the subscription tier that the user purchases.

Use:

  - Add a license to your instance.
  - Purchase a subscription.

Instead of:

  - Buy a license.
  - Purchase a license.

## limitations

Do not use **limitations**. Use **known issues** instead.

## log in, log on

Do not use **log in** or **log on**. Use [sign in](#sign-in-sign-in) instead. If the user interface has **Log in**, you can use it.

## logged-in user, logged in user

Use **authenticated user** instead of **logged-in user** or **logged in user**.

## lower

Do not use **lower** when talking about version numbers.

Use:

- In GitLab 14.1 and earlier.

Instead of:

- In GitLab 14.1 and lower.
- In GitLab 14.1 and older.

## Maintainer

When writing about the Maintainer role:

- Use a capital **M**.
- Write it out.
  - Use: if you are assigned the Maintainer role
  - Instead of: if you are a maintainer

- When the Maintainer role is the minimum required role:
  - Use: at least the Maintainer role
  - Instead of: the Maintainer role or higher

Do not use bold.

Do not use **Maintainer permissions**. A user who is assigned the Maintainer role has a set of associated permissions.

## mankind

Do not use **mankind**. Use **people** or **humanity** instead. ([Vale](../testing.md#vale) rule: [`InclusionGender.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionGender.yml))

## manpower

Do not use **manpower**. Use words like **workforce** or **GitLab team members**. ([Vale](../testing.md#vale) rule: [`InclusionGender.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionGender.yml))

## master

Do not use `master`. Use `main` when you need a sample [default branch name](#default-branch).
([Vale](../testing.md#vale) rule: [`InclusionCultural.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionCultural.yml))

## may, might

**Might** means something has the probability of occurring. Might is often used in troubleshooting documentation.

**May** gives permission to do something. Consider **can** instead of **may**.

Consider rewording phrases that use these terms. These terms often indicate possibility and doubt, and technical writing strives to be precise.

See also [you can](#you-can).

Use:

- The `committed_date` and `authored_date` fields are generated from different sources, and might not be identical.
- A typical pipeline consists of four stages, executed in the following order:

Instead of:

- The `committed_date` and `authored_date` fields are generated from different sources, and may not be identical.
- A typical pipeline might consist of four stages, executed in the following order:

## MB, megabytes

For **MB** and **GB**, follow the [Microsoft guidance](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/bits-bytes-terms).

## member

When you add a [user account](#user-account) to a group or project,
the user account becomes a **member**.

## merge requests

Use lowercase for **merge requests**. If you use **MR** as the acronym, spell it out on first use.

## milestones

Use lowercase for **milestones**.

## Minimal Access

When writing about the Minimal Access role:

- Use a capital **M** and a capital **A**.
- Write it out:
  - Use: if you are assigned the Minimal Access role
  - Instead of: if you are a Minimal Access user

- When the Minimal Access role is the minimum required role:
  - Use: at least the Minimal Access role
  - Instead of: the Minimal Access role or higher

Do not use bold.

Do not use **Minimal Access permissions**. A user who is assigned the Minimal Access role has a set of associated permissions.

## n/a, N/A, not applicable

When possible, use **not applicable**. Spelling out the phrase helps non-English speaking users and avoids
capitalization inconsistencies.

## navigate

Do not use **navigate**. Use **go** instead. For example:

- Go to this webpage.
- Open a terminal and go to the `runner` directory.

([Vale](../testing.md#vale) rule: [`SubstitutionSuggestions.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/SubstitutionSuggestions.yml))

## need to

Try to avoid **need to**, because it's wordy.

For example, when a variable is **required**,
instead of **You need to set the variable**, use:

- Set the variable.
- You must set the variable.

When the variable is **recommended**:

- You should set the variable.

When the variable is **optional**:

- You can set the variable.

## newer

Do not use **newer** when talking about version numbers.

Use:

- In GitLab 14.4 and later...

Instead of:

- In GitLab 14.4 and higher...
- In GitLab 14.4 and above...
- In GitLab 14.4 and newer...

## normal, normally

Don't use **normal** to mean the usual, typical, or standard way of doing something.
Use those terms instead.

Use:

- Typically, you specify a certificate.
- Usually, you specify a certificate.
- Follow the standard Git workflow.

Instead of:

- Normally, you specify a certificate.
- Follow the normal Git workflow.

([Vale](../testing.md#vale) rule: [`Normal.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/Normal.yml))

## note that

Do not use **note that** because it's wordy.

Use:

- You can change the settings.

Instead of:

- Note that you can change the settings.

## older

Do not use **older** when talking about version numbers.

Use:

- In GitLab 14.1 and earlier.

Instead of:

- In GitLab 14.1 and lower.
- In GitLab 14.1 and older.

## Omnibus GitLab

When referring to the installation method that uses the Linux package, refer to it
as **Linux package**.

Use:

- For installations that use the Linux package...

Instead of:

- For installations that use Omnibus GitLab...

For more information, see the
[different installation methods](index.md#how-to-document-different-installation-methods).

## on

When documenting high-level UI elements, use **on** as a preposition. For example:

- On the left sidebar, select **Settings > CI/CD**.
- On the **Grant permission** dialog, select **Group**.

Do not use **from** or **in**. For more information, see the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/f/from-vs-on).

## once

The word **once** means **one time**. Don't use it to mean **after** or **when**.

Use:

- When the process is complete...

Instead of:

- Once the process is complete...

## only

Put the word **only** next to the word it modifies.

- You can create only private projects.

In this example, **only** modifies the noun **projects**. The sentence means you can create one type of project--a private project.

- You can only create private projects.

In this example, **only** modifies the verb **create**. This sentence means that you can't perform other actions,
like deleting private projects, or adding users to them.

## override

Use **override** to indicate temporary replacement.

For example, a value might be overridden when a job runs. The
original value does not change.

## overwrite

Use **overwrite** to indicate permanent replacement.

For example, a log file might overwrite a log file of the same name.

## Owner

When writing about the Owner role:

- Use a capital **O**.
- Write it out.
  - Use: if you are assigned the Owner role
  - Instead of: if you are an owner

Do not use bold.

Do not use **Owner permissions**. A user who is assigned the Owner role has a set of associated permissions.
An Owner is the highest role a user can have.

## Package Registry

Use title case for the GitLab Package Registry.

## page

If you write a phrase like, "On the **Issues** page," ensure steps for how to get to the page are nearby. Otherwise, people might not know what the **Issues** page is.

The page name should be visible in the UI at the top of the page.
If it is not, you should be able to get the name from the breadcrumb.

The docs should match the case in the UI, and the page name should be bold. For example:

- On the **Test cases** page, ...

## permissions

Do not use [**roles**](#roles) and **permissions** interchangeably. Each user is assigned a role. Each role includes a set of permissions.

Permissions are not the same as [**access levels**](#access-level).

## personal access token

Use lowercase for **personal access token**.

## please

Do not use **please** in the product documentation.

In UI text, use **please** when we've inconvenienced the user. For more information,
see the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/p/please).

## Premium

Use **Premium**, in uppercase, for the subscription tier.  When you refer to **Premium**
in the context of other subscription tiers, follow [the subscription tier](#subscription-tier) guidance.

## prerequisites

Use **prerequisites** when documenting the steps before a task. Do not use **requirements**.

For more information, see [the task topic type](../topic_types/task.md).

## press

Use **press** when talking about keyboard keys. For example:

- To stop the command, press <kbd>Control</kbd>+<kbd>C</kbd>.

## profanity

Do not use profanity. Doing so may negatively affect other users and contributors, which is contrary to the GitLab value of [Diversity, Inclusion, and Belonging](https://about.gitlab.com/handbook/values/#diversity-inclusion).

## provision

Use the term **provision** when referring to provisioning cloud infrastructure. You provision the infrastructure, and then deploy applications to it.

For example, you might write something like:

- Provision an AWS EKS cluster and deploy your application to it.

## push rules

Use lowercase for **push rules**.

## recommend, we recommend

Instead of **we recommend**, use **you should**. We want to talk to the user the way
we would talk to a colleague, and to avoid differentiation between `we` and `them`.

- You should set the variable. (It's recommended.)
- Set the variable. (It's required.)
- You can set the variable. (It's optional.)

## register

Use **register** instead of **sign up** when talking about creating an account.

## remove

Use **remove** when an object continues to exist. For example, you can remove an issue from an epic, but the issue still exists.

When an object is completely deleted, use [**delete**](#delete) instead.

## Reporter

When writing about the Reporter role:

- Use a capital **R**.
- Write it out.
  - Use: if you are assigned the Reporter role
  - Instead of: if you are a reporter

- When the Reporter role is the minimum required role:
  - Use: at least the Reporter role
  - Instead of: the Reporter role or higher

Do not use bold.

Do not use **Reporter permissions**. A user who is assigned the Reporter role has a set of associated permissions.

## Repository Mirroring

Use title case for **Repository Mirroring**.

## requirements

Use **prerequisites** when documenting the steps before a task. Do not use **requirements**.

For more information, see [the task topic type](../topic_types/task.md).

## respectively

Avoid **respectively** and be more precise instead.

Use:

- To create a user, select **Create user**. For an existing user, select **Save changes**.

Instead of:

- Select **Create user** or **Save changes** if you created a new user or
  edited an existing one respectively.

## review app

Use lowercase for **review app**.

## roles

Do not use **roles** and [**permissions**](#permissions) interchangeably. Each user is assigned a role. Each role includes a set of permissions.

Roles are not the same as [**access levels**](#access-level).

## roll back

Use **roll back** for changing a GitLab version to an earlier one.

Do not use **roll back** for licensing or subscriptions. Use **change the subscription tier** instead.

## runner, runners

Use lowercase for **runners**. These are the agents that run CI/CD jobs. See also [GitLab Runner](#gitlab-runner) and [this issue](https://gitlab.com/gitlab-org/gitlab/-/issues/233529).

When referring to runners, if you have to specify that the runners are installed on a customer's GitLab instance,
use **self-managed** rather than **self-hosted**.

## runner manager, runner managers

Use lowercase for **runner managers**. These are a type of runner that can create multiple runners for autoscaling. See also [GitLab Runner](#gitlab-runner).

## runner worker, runner workers

Use lowercase for **runner workers**. This is the process created by the runner on the host computing platform to run jobs. See also [GitLab Runner](#gitlab-runner).

## runner authentication token

Use **runner authentication token** instead of variations like **runner token**, **authentication token**, or **token**.
Runners are assigned runner authentication tokens when they are created, and use them to authenticate with GitLab when
they execute jobs.

## (s)

Do not use **(s)** to make a word optionally plural. It can slow down comprehension. For example:

Use:

- Select the jobs you want.

Instead of:

- Select the job(s) you want.

If you can select multiples of something, then write the word as plural.

## sanity check

Do not use **sanity check**. Use **check for completeness** instead. ([Vale](../testing.md#vale) rule: [`InclusionAbleism.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionAbleism.yml))

## scalability

Do not use **scalability** when talking about increasing GitLab performance for additional users. The words scale or scaling
are sometimes acceptable, but references to increasing GitLab performance for additional users should direct readers
to the GitLab [reference architectures](../../../administration/reference_architectures/index.md) page.

## search

When you search, you type a string in the search box on the left sidebar.
The search results are displayed on a search page.

Searching is different from [filtering](#filter).

## seats

When referring to the subscription billing model:

- For GitLab SaaS, use **seats**. Customers purchase seats. Users occupy seats when they are invited
to a group, with some [exceptions](../../../subscriptions/gitlab_com/index.md#how-seat-usage-is-determined).
- For GitLab self-managed, use **users**. Customers purchase subscriptions for a specified number of **users**.

## section

Use **section** to describe an area on a page. For example, if a page has lines that separate the UI
into separate areas, refer to these areas as sections.

We often think of expandable/collapsible areas as **sections**. When you refer to expanding
or collapsing a section, don't include the word **section**.

Use:

- Expand **Auto DevOps**.

Instead of:

- Do not: Expand the **Auto DevOps** section.

## select

Use **select** with buttons, links, menu items, and lists. **Select** applies to more devices,
while **click** is more specific to a mouse.

## self-managed

Use **self-managed** to refer to a customer's installation of GitLab. Do not use **self-hosted**.

## Service Desk

Use title case for **Service Desk**.

## setup, set up

Use **setup** as a noun, and **set up** as a verb. For example:

- Your remote office setup is amazing.
- To set up your remote office correctly, consider the ergonomics of your work area.

## sign in, sign-in

Use **sign in** or **sign in to** as a verb to describe the action of signing in.

Do not use **sign on** or **sign into**, or **log on**, **log in**, or **log into**.

If the user interface has different words, use those.

You can use **sign-in** as a noun or adjective. For example, **sign-in page** or
**sign-in restrictions**.

You can use **single sign-on**.

## sign up

Use **register** instead of **sign up** when talking about creating an account.

## signed-in user, signed in user

Use **authenticated user** instead of **signed-in user** or **signed in user**.

## simply, simple

Do not use **simply** or **simple**. If the user doesn't find the process to be simple, we lose their trust. ([Vale](../testing.md#vale) rule: [`Simplicity.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/Simplicity.yml))

## since

The word **since** indicates a timeframe. For example, **Since 1984, Bon Jovi has existed**. Don't use **since** to mean **because**.

Use:

- Because you have the Developer role, you can delete the widget.

Instead of:

- Since you have the Developer role, you can delete the widget.

## slashes

Instead of **and/or**, use **or** or re-write the sentence. This rule also applies to other slashes, like **follow/unfollow**. Some exceptions (like **CI/CD**) are allowed.

## slave

Do not use **slave**. Another option is **secondary**. ([Vale](../testing.md#vale) rule: [`InclusionCultural.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionCultural.yml))

## storages

In the context of:

- Gitaly, storage is physical and must be called a **storage**.
- Gitaly Cluster, storage can be either:
  - Virtual and must be called a **virtual storage**.
  - Physical and must be called a **physical storage**.

Gitaly storages have physical paths and virtual storages have virtual paths.

## subgroup

Use **subgroup** (no hyphen) instead of **sub-group**. ([Vale](../testing.md#vale) rule: [`SubstitutionSuggestions.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/SubstitutionSuggestions.yml))

## subscription tier

Do not confuse **subscription** or **subscription tier** with **[license](#license)**.
A user purchases a **subscription**. That subscription has a **tier**.

To describe tiers:

| Instead of                      | Use                                    |
|---------------------------------|----------------------------------------|
| In the Free tier or greater     | In all tiers                           |
| In the Free tier or higher      | In all tiers                           |
| In the Premium tier or greater  | In the Premium and Ultimate tier       |
| In the Premium tier or higher   | In the Premium and Ultimate tier       |
| In the Premium tier or lower    | In the Free and Premium tier           |

## that

Do not use **that** when describing a noun. For example:

Use:

- The file you save...

Instead of:

- The file **that** you save...

See also [this, these, that, those](#this-these-that-those).

## terminal

Use lowercase for **terminal**. For example:

- Open a terminal.
- From a terminal, run the `docker login` command.

## Terraform Module Registry

Use title case for the GitLab Terraform Module Registry, but use lowercase `m` when
talking about non-specific modules. For example:

- You can publish a Terraform module to your project's Terraform Module Registry.

## text box

Use **text box** instead of **field** or **box** when referring to the UI element.

## there is, there are

Try to avoid **there is** and **there are**. These phrases hide the subject.

Use:

- The bucket has holes.

Instead of:

- There are holes in the bucket.

## they

Avoid the use of gender-specific pronouns, unless referring to a specific person.
Use a singular [they](https://developers.google.com/style/pronouns#gender-neutral-pronouns) as
a gender-neutral pronoun.

## this, these, that, those

Always follow these words with a noun. For example:

- Use: **This setting** improves performance.
- Instead of: **This** improves performance.

- Use: **These pants** are the best.
- Instead of: **These** are the best.

- Use: **That droid** is the one you are looking for.
- Instead of: **That** is the one you are looking for.

- Use: **Those settings** need to be configured. (Or even better, **Configure those settings.**)
- Instead of: **Those** need to be configured.

## to which, of which

Try to avoid **to which** and **of which**, and let the preposition dangle at the end of the sentence instead.
For examples, see [Prepositions](index.md#prepositions).

## to-do item

Use lowercase and hyphenate **to-do** item. ([Vale](../testing.md#vale) rule: [`ToDo.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/ToDo.yml))

## To-Do List

Use title case for **To-Do List**. ([Vale](../testing.md#vale) rule: [`ToDo.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/ToDo.yml))

## toggle

You **turn on** or **turn off** a toggle. For example:

- Turn on the **blah** toggle.

## TFA, two-factor authentication

Use [**2FA** and **two-factor authentication**](#2fa-two-factor-authentication) instead.

## type

Use **type** when the cursor remains where you're typing. For example,
in a search box, you begin typing and search results appear. You do not
click out of the search box.

For example:

- To view all users named Alex, type `Al`.
- To view all labels for the documentation team, type `doc`.
- For a list of quick actions, type `/`.

See also [**enter**](#enter).

## Ultimate

Use **Ultimate**, in uppercase, for the subscription tier. When you refer to **Ultimate**
in the context of other subscription tiers, follow [the subscription tier](#subscription-tier) guidance.

## units of measurement

Use a space between the number and the unit of measurement. For example, **128 GB**.
([Vale](../testing.md#vale) rule: [`Units.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/Units.yml))

For more information, see the
[Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/bits-bytes-terms).

## update

Use **update** for installing a newer **patch** version of the software only. For example:

- Update GitLab from 14.9 to 14.9.1.

Do not use **update** for any other case. Instead, use **upgrade**.

## upgrade

Use **upgrade** for:

- Choosing a higher subscription tier (Premium or Ultimate).
- Installing a newer **major** (13.0) or **minor** (13.2) version of GitLab.

For example:

- Upgrade to GitLab Ultimate.
- Upgrade GitLab from 14.0 to 14.1.
- Upgrade GitLab from 14.0 to 15.0.

Use caution with the phrase **Upgrade GitLab** without any other text.
Ensure the surrounding text clarifies whether
you're talking about the product version or the subscription tier.

See also [downgrade](#downgrade) and [roll back](#roll-back).

## upper left, upper right

Use **upper-left corner** and **upper-right corner** to provide direction in the UI.
If the UI element is not in a corner, use **upper left** and **upper right**.

Do not use **top left** and **top right**.

For more information, see the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/u/upper-left-upper-right).

## useful

Do not use **useful**. If the user doesn't find the process to be useful, we lose their trust. ([Vale](../testing.md#vale) rule: [`Simplicity.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/Simplicity.yml))

## user account

You create a **user account**. The user account has an [access level](#access-level).
When you add a **user account** to a group or project, the user account becomes a **member**.

## utilize

Do not use **utilize**. Use **use** instead. It's more succinct and easier for non-native English speakers to understand.
([Vale](../testing.md#vale) rule: [`SubstitutionSuggestions.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/SubstitutionSuggestions.yml))

## via

Do not use Latin abbreviations. Use **with**, **through**, or **by using** instead. ([Vale](../testing.md#vale) rule: [`LatinTerms.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/LatinTerms.yml))

## we

Try to avoid **we** and focus instead on how the user can accomplish something in GitLab.

Use:

- Use widgets when you have work you want to organize.

Instead of:

- We created a feature for you to add widgets.

([Vale](../testing.md#vale) rule: [`SubstitutionSuggestions.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/SubstitutionSuggestions.yml))

## while

Use **while** to refer only to something occurring in time. For example,
**Leave the window open while the process runs.**

Do not use **while** for comparison. For example, use:

- Job 1 can run quickly. However, job 2 is more precise.

Instead of:

- While job 1 can run quickly, job 2 is more precise.

For more information, see the [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/w/while).

## whilst

Do not use **whilst**. Use [while](#while) instead. **While** is more succinct and easier for non-native English speakers to understand.

## whitelist

Do not use **whitelist**. Another option is **allowlist**. ([Vale](../testing.md#vale) rule: [`InclusionCultural.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/InclusionCultural.yml))

## yet

Do not use **yet** when talking about the product or its features. The documentation describes the product as it is today.

Sometimes you might need to use **yet** when writing a task. If you use
**yet**, ensure the surrounding phrases are written
in present tense, active voice.

[View guidance about how to write about future features](../versions.md#promising-features-in-future-versions).
([Vale](../testing.md#vale) rule: [`CurrentStatus.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/CurrentStatus.yml))

## you, your, yours

Use **you** instead of **the user**, **the administrator** or **the customer**.
Documentation should speak directly to the user, whether that user is someone installing the product,
configuring it, administering it, or using it.

Use:

- You can configure a pipeline.
- You can reset a user's password. (In content for an administrator)

Instead of:

- Users can configure a pipeline.
- Administrators can reset a user's password.

## you can

When possible, start sentences with an active verb instead of **you can**.
For example:

- Use code review analytics to view merge request data.
- Create a board to organize your team tasks.
- Configure variables to restrict pushes to a repository.
- Add links to external accounts you have, like Skype and Twitter.

Use **you can** for optional actions. For example:

- Use code review analytics to view metrics per merge request. You can also use the API.
- Enter the name and value pairs. You can add up to 20 pairs per streaming destination.

<!-- vale on -->
<!-- markdownlint-enable -->
